<template>
<div>
    <h1>回调地狱</h1>
    <pre>
        axios1(){
            <!-- success -->
             axios2(){
            <!-- success -->
                axios3(){
                <!-- success -->
                 }
            }
        }
    </pre>
    <pre>
        const promise = new Promise(function(resolve, reject) {
        // ... some code

        if (/* 异步操作成功 */){
            resolve(value);
        } else {
            reject(error);
        }
        });
    </pre>
    <pre>
        function timeout(ms) {
        return new Promise((resolve, reject) => {
            setTimeout(resolve, ms, 'done');
        });
        }

        timeout(100).then((value) => {
        console.log(value);
        });
    </pre>
    <hr>
    <pre>
        getJSON("/posts.json")
            .then(function(json) {
                return json.post;
                })
            .then(function(post) {
                // ...
        });
    </pre>
    <h1>上面的代码使用then方法，依次指定了两个回调函数。
        第一个回调函数完成以后，会将返回结果作为参数，传入第二个回调函数。。</h1>
    <p>Promise中常用的几个方法：
        1、then():成功的回调
        2、catch():失败的回调
        3、all():多个请求的集合，要求每一个请求都成功。取决于最慢的那个请求。
        3、race():多个请求的集合，只需要第一个成功的请求。取决于最慢的那个请求。  </p>
        <hr>
        <p>ES7中的async/await</p>
        async fn getJSON(){
            await ajax1() 。。。
             await ajax2() 。。。
            await ajax3() 。。。
        }
</div>
</template>

<script>
export default {
    data(){
        return{

        }
    }
}
</script>

<style scoped>
    
</style>